Estimator for end-to-end throughput of wireless networks

ABSTRACT

The present invention presents an architecture to dynamically measure and estimate the throughput perceived by a user during a connection in real-time in a wireless network system. The architecture system design of the present invention allows for information gathering independent of the mathematical models used and takes into account security settings in the network hosts. The present invention also sets forth a number of throughput estimators (TEs) that can be used within the architecture to gather the information needed to carry out the throughput estimation calculations. The throughput estimations can then be used for download rate control, QoS, load balancing, etc. The present invention also provides algorithms to calculate the real-time throughput experienced by a user flow.

FIELD OF THE INVENTION

The present invention relates to network throughput estimation, which isan essential component in predicting network throughput for purposes ofQuality of service (QoS) management, service prioritization, and loadbalancing. The present invention provides an architecture design of areal-time bandwidth-aware wireless middleware system, with the focus onthe end-to-end throughput measurement between a mobile host and anInformation Gateway (IGW). The present invention also providesalgorithms for calculating the estimated throughput.

BACKGROUND

Many applications, such as streaming video, send packets atpre-determined nominal service rates. However, the actual throughput orreceiving rate at mobile systems (hosts) is highly sensitive to changingnetwork conditions and influenced by several factors, includingavailable bandwidth. The throughput experienced by mobile hosts inwireless networks is further impacted by background noise due toconstant location and topology changes, frequent handoff across basestations (radio cells), wireless signal fading and interference as wellas to the inherent network infrastructure fluctuations, such as networkload, large numbers of users, policing of packets and link utilizations.In order to utilize the available network resources, mobile users needthe ability to adjust their behavior to highly fluctuating networkconditions. This is especially critical in providing reasonable qualityfor real-time services such as video and web-browsing. To achieve thisgoal, mobile hosts need to accurately and reliably measure and estimatethe run-time available network capacity.

The Throughput Estimator (TE) is considered an indispensable componentof system architecture for accurately determining the throughputavailable to applications and for providing feedback to mechanisms thatadapt service rates to network conditions. The need to include the TEcomponent in the system architecture is also driven by QoS demands. Areliable and accurate estimate of network condition is crucial formaintaining adequate levels of services, and could be used as athreshold for admission control for differentiated services and forpre-allocation of resources.

TEs for wired networks place their emphasis on measuring and estimatingphysical link and network capacity characteristics, such as physicalnetwork latency and bandwidth.

TEs for wired networks usually send a large set of data probes (packets)of different sizes, and measure round trip time (RTT) between source anddestination. This approach focuses on estimating total available networkcapacity and provides estimates of network characteristics by usingappropriate mathematical treatments to extract the useful informationfrom obtained data and filtering out (reducing) noise. Research onthroughput estimation for wired networks focuses on how to deriveaccurate and reliable TEs while minimizing the associated trafficoverhead and on various mathematical models for processing the obtaineddata. These methods have several drawbacks when used for real-timethroughput control for mobile users. In particular, the characteristicsof the network are determined from statistics gathered during non-busytimes, whereas the capacity or power to a wireless user varies dependingon distance, the physical environment and geographic topology. Further,wireline algorithms assume that the reverse and forward channelscapacities are equal, but this may not be true in wireless networks.Moreover, using schemes based on ping packets requires synchronizationbetween users and networks to properly measure round trip times andone-way trip times, which may not be feasible in a wireless mobilenetwork.

Other estimation techniques have been proposed in the field of trafficmodeling including effective bandwidth modeling, self-similar trafficmodeling, and handoff reservation modeling, to approximate the requiredcapacity of a connection in order to reserve resources or performadmission control for a flow. In these techniques, the total networkcapacity is fixed but the behavior of the connection may change due tothe nature of the application or congestion in the network. Thesemethods are used for reservation of bandwidth but do not providereal-time throughput estimates.

Providing and managing diversified user needs and dynamic QoS adaptationto the available network resources becomes more difficult in the highlyfluctuating environment that is characteristic of wireless networks.Known TEs for wireless networks estimate the available network capacityand studies thereof fall into two categories, i.e. system perceivedperformance and mobile user perceived performance. System perceivedperformance can be measured in terms of speed and response time as wellas system availability, reliability and scalability. The workload forsystems (middleware) in the wireless networks is characterized byrequests from mobile hosts for long sessions but relatively shortmessage sizes. The workload characteristic of wireless systems is due tothe low bandwidth and long latency characteristics of the currentwireless infrastructure.

In a real application, the communication between network server and amobile host is influenced by wireless bandwidth which is vulnerable toconstant disruption due to unevenly distributed coverage and movement ofthe mobile host. Therefore, user perceived performance is measured in anend-to-end fashion, which cannot directly be derived from systemperceived performance. A reliable and accurate throughput estimator is adesirable system component for its ability to predict the time elapsedin serving a request. The obtained information in turn can be used todetermine whether the incoming request is accepted or not based on itsservice level and the overall system conditions.

Implicit real-time throughput estimation per user for an ongoingconnection has been utilized by transport protocols such as TCP andRTCP. In RTCP the sender uses the current and previous values of lossand delay reported by the receiver to estimate bandwidth andappropriately decrease, increase or maintain the current sending rate toreflect the over-loaded, under-loaded or loaded states of the network,respectively. In TCP the reduction of the window size, i.e. reducedsending rate, occurs when acknowledgements are not received beforetime-out, based on the assumption that the lack of acknowledgementindicates packet loss and therefore network congestion. Once packetacknowledgements are received in a timely fashion, the assumption isthat throughput is available to the user and TCP starts to increase itswindow size, or sending rate, to reflect the resource availability inthe network. TCP inherently does not work well in the lossy environmentof wireless networks. If high packet loss occurs, TCP assumes thenetwork is congested and dramatically reduces the sending throughput. Inactuality, higher throughput may be available.

There remains a need in the art for improvements in the technology ofthroughput estimation, particularly in for wireless networks.

SUMMARY

The present invention presents an architecture to dynamically measureand estimate the throughput perceived by a user during a connection inreal-time. The architecture system design of the present inventionallows for information gathering independent of the mathematical modelsused. In particular, the present invention provides an application-layerapproach, which is not dependent on any one transport protocol. Byproviding an application-layer solution that can work in conjunctionwith lower layer solutions such as TCP, it is possible to provideadditional measuring and control on the throughput. This leads to lessdrastic changes in the TCP throughput due to the changing wirelessbandwidth and also provides more efficient usage of the actual wirelessbandwidth. Further, the present invention gives bi-directionalthroughput estimation by allowing for the throughput calculation ateither a gateway located in the backbone network or in the mobile host.The present invention also takes into account various security settings,such as firewall and VPN currently employed, which may create ahindrance in obtaining throughput information.

The present invention also sets forth a number of TEs that can be usedwithin the architecture to gather the information needed to carry outthe throughput estimation calculations. The information gathered bythese TEs can be used for download rate control, QoS, load balancing,etc. For example, these TEs can be used in an application-layer run-timethroughput estimation and download control solution to provide controlfor applications experiencing varying throughput conditions because ofmovement, wireless environment and network loading. In addition, thepresent invention provides algorithms to calculate the real-timethroughput experienced by a user flow.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 depicts a system architecture according to one embodiment of thepresent invention.

DETAILED DESCRIPTION OF THE DRAWINGS

The present invention provides an architecture to dynamically measureand estimate the throughput perceived by a user during a connection inreal-time. The complexity of distributed environments arise naturallybecause of the diversity of computing platforms, user preferences,incompatible protocols and legacy applications, as well as varying QoSrequirements in dynamically changing wireless environments. Thearchitecture of the present invention is based on a multi-tier agentarchitecture consisting of the mobile host (client) at the first tier,an Information Gateway (IGW) at the second tier, and application serversat the third or fourth tiers. Application agents serve as self-containedapplication interfaces to a specified application server, offering anapplication layer that seamlessly glues different services andapplications together. These agents can be modeled as independentcomponents implemented by Java Bean, DCOM, COBRA or other comparablearchitectures. The salient feature of agent-based middlewarearchitecture is its adaptability to a constantly varying environment.The simplicity of managing such architectures provides transparency tousers with smooth integration of various services, including theaddition or removal of services or components.

FIG. 1 shows the system architecture according to the present invention,designed to service large mobile user communities, typically users inmoving vehicles. The architecture comprises several access networks inwhich a mobile host may be located, an information gateway (IGW), and anapplication or media server. The IGW, serves as a gateway to forwardrequests from mobile hosts to application servers (including webservers) and to relay the corresponding responses to the mobile hosts.Communication between the IGW and the application server can be carriedout over the internet. In accordance with the present invention, arequest sent out by the mobile host is picked up by a wireless basestation and routed to the IGW where user authentication may be performedand various services associated with the user may be granted. In thisfashion, the IGW acts as a virtual firewall, fending off unauthorizedusers and ensuring availability of services to the subscribed user. TheIGW may also perform as a proxy that relays requests to applicationservers and carries out the HTML transactions and caching functions.

The architecture shown in FIG. 1, comprises a multi-tier agentarchitecture, wherein the mobile host is at the first tier with accessnetwork connectivity, The IGW which is controlled by a third-partyservice vendor is at the second tier, and application servers are at thethird or fourth tiers in the backbone network.

In accordance with the present invention, each user has an associatedserving IGW which is located in the backbone. This association with theIGW may be static or may change based on user location, load balancingand other network constraints. Because the IGW acts as a filter fortraffic flow to the mobile user, it is a desirable location to performdownload rate control functions without impacting the backbone orcarrier network functionalities, thus giving full control to thethird-party service provider.

By using the architecture of the present invention the availability ofthroughput estimation is guaranteed and therefore provisioning ofdifferentiated services and user preference based services is supported.By performing the throughput measurement a the IGW, the system of thepresent invention provides a more efficient distribution of resources,such as allocating more throughput for sessions with tighter loss anddelay requirements.

The present invention also provides TEs capable of handling the uniquebehavior of the wireless environment. In particular, the TEs of thepresent invention have the following characteristics. The TEs of thepresent invention provide real-time estimation information. This isimportant because estimation information is highly volatile, and quicklyobsolete when a mobile host moves. Further, the TEs of the presentinvention are individually tailored, e.g. end-to-end or peer-to-peer.This is important because the available link capacity from a mobile hostto a server is affected significantly by the present location of themobile host, terrain condition and base station coverage. In addition,the TEs of the present invention incur minimal overhead which isimportant in wireless networks because of limited wireless bandwidth.

The TEs of the present invention fall into two categories; i.e. passiveand active estimators. Passive estimators are initiated and invoked byanother process or request (e.g. content delivery rate-basedestimators). A passive estimator is initiated upon receipt of a requestfrom a mobile host. Then the IGW acting as the gateway, retrieves thehost's IP address, and forwards probes with timestamps to the requester.The IGW measures the corresponding round trip time (RTT) and uses thatmeasurement to estimate throughput. Active estimators are self-initiated(e.g. ICMP-based estimators). For example, an active estimator on thehost-side may send data probes to the IGW in a periodic fashion. Theobtained RTT measurement will then be used by the mobile host or the IGWfor updating the corresponding throughput information for the specificuser.

Several TEs based on different protocols are described below, all ofwhich can be used in the present invention as will be more fullydiscussed below.

ICMP (Internet Control Message Protocol) is used to report networkerrors in IP datagram routing as well as flow control. An ICMP-based TEsends data probes, or ping packets, with varying sizes within the ICMPheader to a destination host, each data probe being immediately returnedto the source upon receipt by the destination host. Each data probecontains a sequence number and time stamp, so that when the sourcereceives the response from the destination host, the RTT can bemeasured, thus providing a good indication of the network throughput. Amajor drawback to ICMP-based ping type estimators is that they can beused as a powerful tool to infringe network security, and therefore, webservers often prevent the servers from being pinged by disabling thecorresponding ICMP services. The architecture of the present inventionovercomes this drawback by configuring the IGW to always be ICMP-active,making the ICMP-based TE independent of various network securitysettings.

HTTP-based TEs consists of two components, one residing in the networkand the other residing in the mobile host, the two components workingtogether to provide an estimate of end-to-end system throughput. One ofthe components, called the HTTP-estimator client, serves as a simpleclient that sends an HTTP request to the other component, called theHTTP-estimator server. The request message specifies the size of theresponse, so that upon receipt, HTTP-estimator server will send aresponse with the size specified by the HTTP-estimator client, whichthen measures the RTT. The collected measurement information can be keptin memory and used for monitoring purposes. In the system of the presentinvention, an HTTP-based TE can act passively or actively and either theIGW or the mobile host can include the HTTP-estimator client component.It is important in the wireless environment that the system be capableof saving the past as well as present information on throughputestimation for each active user. This property is referred to as statepersistence and contrasts with the stateless approach adopted bytraditional WWW servers. In the architecture of the present invention,the state persistency is maintained by a data entry with a very smallsize for each user which may be stored on the IGW. In particular, athread is assigned to each incoming HTTP request and the host IP is usedas the unique user identifier.

A TCP trace TE is based on analyses of TCP trace which indicates thatthe actual measure of time for content delivery could be used as a goodindicator of end-to-end network traffic. TCP path analysis can be usedto pinpoint the processing delays caused by various factors. Inparticular, a HTTP connection can be separated into three time frames;connection establishment, bulk data transfer and connection terminationand it has been shown through detailed analysis, that for a lightlyloaded system, server-induced delay is a dominant factor at HTTPconnection establishment, while network-induced delay is a dominantfactor at bulk data transfer time. In the architecture of the presentinvention, the network-induced delay can be considered as a roughestimate of the end-to-end throughput between IGW and a mobile host.Further, using a TCP trace type TE in the system of the presentinvention overcomes the disadvantage that only a one-way path (downlink)capacity estimation is provided. In particular, the architecture of thepresent invention takes system load into account. Therefore, detailedinformation about the root causes of delays, and identification ofnetwork-induced and system load-induced delays is provided, resulting inthe accurate end-to-end estimation of the network traffic throughputbetween IGW and a mobile host.

Simple Network Management Protocol (SNMP), is the de facto standard fornetwork management, offering the hierarchical structure referred to asManagement Information Bases (MIB) to specify network and applicationobjects, and defining a set of operations on the managed objects. In amodel for SNMP operation, a master agent is a process running on amanaged node to exchange SNMP information, and a subagent is a processthat is able to access various management information aboutapplication-related objects specified by the MIB. The subagent retrievesstatus information of the managed objects via the master agent,synchronously or asynchronously. Known TEs for SNMP rely on theassumption that good performance at the server indicates good end-to-endthroughput, as the deterioration of server performance in terms ofresponse time and network throughput will indiscriminately affect allmobile clients. However, this is not the case when using the IGWarchitecture of the present invention, because latency can be incurredat the mobile host, the server or the network. Pinpointing the precisecauses of poor system performance is difficult because systemperformance is influenced by many factors such as CPU, memory, disk,network bandwidth, etc. Therefore, in accordance with the presentinvention an SNMP-based TE uses statistical network traffic information.In particular, information such as total process connection (number ofactive TCP connections, number of active UDP connections), TCPstatistics information (number of segments sent, number of segmentsreceived, number of current established sessions, number of segmentsretransmitted), UDP statistics information (number of datagramsreceived, number of datagrams sent, number of datagrams dropped,received packets discarded), EP statistics information (number ofpackets received, number of packets delivered), and ICMP statisticsinformation (number of message sent, number of message received) can beused.

In the architecture of the present invention, the IGW serves as the onlyinterface to the internet for the mobile host, and therefore all trafficmust go through the IGW. By using the statistical information inconjunction with a timer, the overall network traffic rate at the IGWcan be derived and this derivation serves as a rough estimation for theend-to-end throughput between IGW and mobile hosts.

The present invention also provides algorithms for estimating throughputin wireless networks. In particular, using a set of algorithms accordingto the present invention, a weighted average throughput experienced bythe user's application is calculated. The algorithms of the presentinvention have important advantages and distinctions from estimationsused for wired networks. In particular, the algorithms of the presentinvention track real-time throughput with minimal overhead to providecontrol in limited wireless bandwidth environments. As a result,reasonable quality is provided and injection of too many additionalpackets and overloading a wireless connection that is already slow isavoided.

The algorithms of the present invention are used to estimate thereal-time path throughput between the IGW and the user, by measuring therate at which information is received at the client's application. Inparticular, let At be the measurement interval and let r be the currentmeasurement time. The measured throughput rate sample is then R(τ)=M/Δt,where M is the number of messages that arrive during the time interval(τ−ΔAt, τ).

Throughput is then estimated for an application flow using equation (1).

{circumflex over (R)}(τ)=α(τ)R(τ)+(1−α(τ))E[R _(τ−Δt)]  (1)

This estimated value is a weighted average of two components, thecurrent measured value and the average of the last K-1 measured valuesas shown in equation (2).

$\begin{matrix}{{E\left\lbrack R_{\tau - {\Delta \; t}} \right\rbrack} = {\frac{1}{K - 1}{\sum\limits_{k = 1}^{K - 1}\; {R\left( {\tau - {\left( {K - k} \right)\Delta \; t}} \right)}}}} & (2)\end{matrix}$

The weight value α(τ) is then calculated as the average fractionaldifference between consecutive measurements points for the last N-imeasurements as shown in equation (3).

$\begin{matrix}{{\alpha (\tau)} = {\frac{1}{N - 1}{\sum\limits_{n = 1}^{N - 1}\; \frac{{abs}\left\lbrack {{R\left( {\tau - {\left( {N - n - 1} \right)\Delta \; t}} \right)} - {R\left( {\tau - {\left( {N - n} \right)\Delta \; t}} \right)}} \right\rbrack}{\max \left\lbrack {{R\left( {\tau - {\left( {N - n - 1} \right)\Delta \; t}} \right)},{R\left( {\tau - {\left( {N - n} \right)\Delta \; t}} \right)}} \right\rbrack}}}} & (3)\end{matrix}$

When a user session starts, the throughput estimator must initiallycollect a number of input rate measurements, or samples, before theestimation begins. The number of samples needed is max(N, K). The clientwill then periodically send the last estimated and last measuredthroughput values to the IGW as feedback. For example, assume the lastmeasured and estimated values are recorded at time γ, then the userwould forward {circumflex over (R)}(γ), R(γ) to the IGW. Additionally,estimated values can be sent before the periodic update time, if theclient determines that the estimated throughput varies significantlyfrom the current measured value.

As noted above, to accommodate the wide range of service rates, the IGWacts as the intermediate node for all communications between the mobileuser and application servers. The IGW download rate control algorithmaccording to the present invention dynamically adjusts the contentdownload in response to the varying path throughput in order to minimizethe session information loss and latency. The IGW adjusts the sendingrate using standard methods such as leaky bucket policing.

Continuing with the example above, the IGW will receive the lastestimated throughput value and measured throughput value from the mobileuser at time γ. The IGW then calculates the new download rate forcurrent time t, R_(DL)(t) for the particular application flow. Theactual path throughput R_(A)(t) is a function of the network andtherefore, is unknown but can be approximated by considering themeasured rate at which the user is receiving. If the download rate isgreater than the actual throughput, then the measured throughput rate atthe user side will be at most R_(A)(t). However, if the download rate isless than R_(A)(t), the receiving rate measured at the user will be atmost R_(DL)(t). A new download rate is calculated using equation (4),where the sensitivity parameter β and the increment parameter δ areengineering parameters based on real world testing and sampling ofwireless network throughput fluctuations and device capabilities.

$\begin{matrix}\left. {if}\mspace{14mu} \middle| {{R(\gamma)} - {\hat{R}(\gamma)}} \middle| \left\{ \begin{matrix}{{> \beta},{{{then}\mspace{14mu} {R_{DL}(t)}} = {\max \left\lbrack {{R(\gamma)},{\hat{R}(\gamma)}} \right\rbrack}}} \\{{< \beta},{{{then}\mspace{14mu} {R_{DL}(t)}} = {{\max \left\lbrack {{R(\gamma)},{\hat{R}(\gamma)}} \right\rbrack} + \delta}}}\end{matrix} \right. \right. & (4)\end{matrix}$

Based on the possible relationships between the throughput, availablethroughput and download rates, the conditions set forth in equation (4)are used to adjust the download rate. Equation (4) is used toapproximate the relation between the measured throughput, estimatedthroughput, download rate and the actual path throughput. For example,if the difference between the estimated and the measured throughputvalues is <β, then the two values are comparable because the downloadrate has not exceeded the actual path throughput. The IGW can then sendat a higher rate because the available path throughput may beunderutilized, with the new download rate being based on the maximum ofthe measured and estimated throughput value plus the incremental amount.Since the estimated and measured throughput are relatively close, themaximum of these two values is used as the baseline for the updateddownload rate to make the most use of the path throughput. If themeasured and estimated values are not comparable, then the actual paththroughput is varying, causing the measured throughput rates to vary aswell, in which case the maximum of measured and estimated throughput isused as the new download rate. The estimated throughput values and themeasured rates will become comparable again if the actual throughputfluctuations are limited.

During a session, the user may move through heterogeneous wirelessnetworks which may cause large capacity fluctuations. For example, auser may move from an 802.11b network to a CDMA network, causing athroughput drop of a factor of 10. To handle dramatic throughput changesas users traverse heterogeneous networks, the user will trigger theestimation algorithm and the IGW download control to restart with thenominal service rate of the network as the baseline download rate value.A user will recognize that handoff into a new network has occurredthrough network layer changes such as a new IP address, or a new activenetwork card for multi-port devices. The decision to start or restartthe algorithm in a new network may depend on the type of network. Forexample, time in high-speed picocell networks may be very short-livedand estimation values would become quickly outdated. Therefore, it maynot be useful to perform throughput control while in this type ofnetwork.

The sensitivity parameter and the increment parameter are importantelements of equation (4). With a high sensitivity parameter β, thedownload rate control becomes insensitive to path variations resultingin usage gain of the actual path throughput. However, very large βignores large variations and may result in download rates which exceedthe actual throughput, causing loss. The increment parameter, δ, shouldbe large enough to take advantage of the available throughput but smallenough that if the available throughput is reduced, the impact on thereceiving rate at the user is limited. The increment parameter should bechosen to be less than the sensitivity parameter to avoid excessiveoscillation in the adjusted download rate.

The architecture of the present invention provides end-to-end throughputestimation for each mobile user by means of various TEs operating indifferent protocols and environments. An aggregate TE is also defined bythe present invention providing overall information on the throughputperformance of the network. End-to-end throughput estimation is anindispensable component in a QoS system architecture because of itsability to anticipate the delay in serving a request from a mobile hostbased on available resources. The real-time estimation informationprovided by the present invention serves as crucial feedback informationto QoS managers for prioritizing user requests as well as serviceadaptation depending on the overall resource availability and userservice subscription. In particular, the proposed throughput controlapproach can be utilized to provide increased throughput when high paththroughput is available and limit download traffic when the paththroughput is low.

The application-layer approach of the present invention enables thethroughput control to be independent of network technologies and doesnot require any modifications of network equipment (e.g., routers, basestations), however, that additional software at the mobile host and atthe IGW will be required.

The use of the present invention is technically feasible even for alarge user base because of the low overhead in maintaining individualend-to-end information and the efficient management of information.Further the present invention provides a robust and flexibleinfrastructure in obtaining the end-to-end throughput estimation andmore accurate estimations by information synthesis from multiple sourcesusing various protocols. These estimates, in turn, can be used todetermine the adjustment to the service rate, if any, in order toproperly utilize available network bandwidth.

It is anticipated that other embodiments and variations of the presentinvention will become readily apparent to the skilled artisan in thelight of the foregoing description and examples, and it is intended thatsuch embodiments and variations likewise be included within the scope ofthe invention as set out in the appended claims.

1. A telecommunications system architecture comprising: at least oneaccess network; a mobile host located in said access network; a backbonenetwork, including at least one application server; an informationgateway located in said backbone network; and a throughput estimatorresiding on said information gateway; wherein said mobile hostcommunicates with said application server through said informationgateway and said throughput estimator provides information useful inoptimizing download rate to said mobile host.
 2. A telecommunicationssystem as set forth in claim 1, wherein said throughput estimator isselected from the group consisting of an ICMP-based throughputestimator, a HTTP-based throughput estimator, a TCP trace throughputestimator, and a SNMP-based throughput estimator.
 3. Atelecommunications system as set forth in claim 1, wherein saidthroughput estimator is a passive throughput estimator.
 4. Atelecommunications system as set forth in claim 1, wherein saidthroughput estimator is an active throughput estimator.
 5. A method ofoptimizing download rate to a mobile host from an application server ina telecommunications network, said method comprising: providing aninformation gateway between said mobile host and said application servercapable of adjusting said download rate; measuring a throughput rateusing the following equation R(τ)=M/Δt, wherein R(τ) is the measuredthroughput rate, Δt is the measurement time interval, τ be the currentmeasurement time and M is the number of messages that arrive during thetime interval; calculating an estimated throughput rate for anapplication flow using the following equation {circumflex over(R)}(τ)=α(τ) R(τ)+(1−α(τ)) E[R_(τ−Δt)], wherein the estimated valueE[R_(t−Δt)] is a weighted average of the current measured value and theaverage of the last K-1 measured values, and weight value α(τ) is theaverage fractional difference between consecutive measurements points;calculating the difference between said measured throughput rate andsaid estimated throughput rate and if said difference is less than apredetermined sensitivity parameter, then increasing said download ratethrough said information gateway by a predetermined incremental amount.6. A method according to claim 5, wherein said predetermined incrementalamount is less than said predetermined sensitivity parameter.
 7. Amethod according to claim 5, wherein said step of calculating anestimated throughput rate is carried out at said information gateway. 8.A method according to claim 5, wherein said step of calculating anestimated throughput rate is carried out at said mobile host.
 9. Amethod according to claim 5, wherein said step of calculating thedifference is carried out at said information gateway.